1. Field of the Invention
The present invention relates to a method for reconfiguring software parameters in a microcontroller as well as a microcontroller and a control unit for this purpose.
2. Description of the Related Art
The reconfiguration of software, in particular of free parameters, in a microcontroller often represents a major logistical challenge. For example, in the case of microcontrollers, which are used in a vehicle control unit, a necessary reconfiguration may involve time and effort of several days. To this end, it may be necessary to redesign and test the software, deliver it to a customer and then reprogram the vehicle or the associated microcontroller in one of its control units in a reprogramming station. Such a reconfiguration, however, is not only of interest to a customer, but also, for example, when testing the software. Often a laboratory for testing does not have fully adequate surroundings, making it, e.g., necessary to deactivate certain monitoring functions. In the use case “microcontroller in the vehicle,” it might be possible, for example, for the application programmer to quickly trigger a logic change/monitoring deactivation in order to check the vehicle's behavior in other situations. For reconfiguring software in microcontrollers, in particular in the context described, two methods are presently known: on the one hand, the modification of the entire software code, its compilation and subsequent flashing; on the other hand, the modification of individual software parameters which may be flashed individually in the software, compilation and subsequent partial flashing.
A method for reconfiguring control unit software is known from published German patent application document DE 102 60 103 A1. In this case, the design of old software components is replaced by the design of new software components, the new software components being written into a second memory area, and the new software components are designed instead of the old ones as the result of branching. This method also entails the aforementioned logistical complexity of having to modify and rewrite an entire software program or an entire software section.